﻿using System;
using System.Linq;
using System.Collections.Generic;
using SIM.Geo.DA;
using SIM.Geo.BE;

namespace SIM.Geo.BL
{
    public class BLConsumo
    {

        #region Metodos
        /// <summary>
        /// Método que devuelve la lista de Consumo
        /// </summary>
        /// <returns></returns>
        public List<Consumo> ListarConsumo(int codigoAvanceDiario)
        {
            return Accesor.ListarConsumo(codigoAvanceDiario);
        }
        /// <summary>
        /// Método para insertar una Consumo
        /// </summary>
        /// <param name="Consumo"></param>
        /// <returns></returns>
        public int InsertarConsumo(Consumo consumo)
        {
            return Accesor.InsertarConsumo(consumo);
        }
        /// <summary>
        /// Método para modificar un Consumo
        /// </summary>
        /// <param name="Consumo"></param>
        public void ModificarConsumo(Consumo consumo)
        {
            Accesor.ModificarConsumo(consumo);
        }
        /// <summary>
        /// Método para eliminar Consumo
        /// </summary>
        /// <param name="Consumo"></param>
        public void EliminarConsumo(int codigoAvanceDiario , int codigoProducto)
        {
            var consumo = Accesor.ObtenerConsumo(codigoAvanceDiario, codigoProducto);
            Accesor.EliminarConsumo(consumo);
        }

        /// <summary>
        /// Método que devuelve Consumo por codigo
        /// </summary>
        /// <param name="codigoConsumo"></param>
        /// <returns></returns>
        public Consumo ObtenerConsumo(int CodigoAvanceDiario, int codigoProducto)
        {
            return Accesor.ObtenerConsumo(CodigoAvanceDiario, codigoProducto);
        }

        /// <summary>
        /// Método que devuelve la lista de Consumo Por Avance diario
        /// </summary>
        /// <returns></returns>
        public List<listarAvanceDiarioConsumo_Result> ListarAvanceDiarioConsumo(int codigoAvanceDiario)
        {
            return Accesor.ListarAvanceDiarioConsumo(codigoAvanceDiario);
        }
        #endregion

        #region Accesor
        private static DAConsumo Accesor
        {
            [System.Diagnostics.DebuggerStepThrough]
            get { return new DAConsumo(); }
        }
        #endregion
    }
}
